Managing Model Adaptation by Precise Detection of Metamodel Changes
نویسندگان
چکیده
Technological and business changes influence the evolution of software systems. When this happens, the software artifacts may need to be adapted to the changes. This need is rapidly increasing in systems built using the Model-Driven Engineering (MDE) paradigm. An MDE system basically consists of metamodels, terminal models, and transformations. The evolution of a metamodel may render its related terminal models and transformations invalid. This paper proposes a three-step solution that automatically adapts terminal models to their evolving metamodels. The first step computes the equivalences and (simple and complex) changes between a given metamodel, and a former version of the same metamodel. The second step translates the equivalences and differences into an adaptation transformation. This transformation can then be executed in a third step to adapt to the new version any terminal model conforming to the former version. We validate our ideas by implementing a prototype based on the AtlanMod Model Management Architecture (AMMA) platform. We present the accuracy and performance that the prototype delivers on two concrete examples: a Petri Net metamodel from the research literature, and the Netbeans Java metamodel.
منابع مشابه
Structures and processes for managing model-metamodel co-evolution
Software changes over time. During the lifetime of a software system, unintended behaviour must be corrected and new requirements satisfied. Because software changes are costly, tools for automatically managing change are commonplace. Contemporary software development environments can automatically perform change management tasks such as impact analysis, refactoring and background compilation. ...
متن کاملEvolutionary Metamodeling
Model-based software development promises to increase productivity and quality through domain-specific modeling languages. In response, modeling languages are receiving increased adoption in industry. With the integration of modeling languages into industrial development practice, their maintenance is gaining importance. Like software, modeling languages and thus their metamodels are subject to...
متن کاملAutomatability of Coupled Evolution of Metamodels and Models in Practice
Model-based software development promises to increase productivity by offering modeling languages tailored to a problem domain. Such modeling languages are often defined by a metamodel. In consequence of changing requirements and technological progress, these modeling languages and thus their metamodels are subject to change. Manually migrating models to a new version of their metamodel is tedi...
متن کاملOn the Impact Significance of Metamodel Evolution in MDE
Harnessing metamodels to engineer application domains is at the core of Model-Driven Engineering. A large number of artifacts pursuing a common scope are defined starting from metamodels which represent the nucleus of an ecosystem. Analogously to any software artifact, metamodels are equally prone to evolution. However, changing a metamodel might affect the components of the ecosystem. In fact,...
متن کاملAn Improved N-dimensional NURBs-based Metamodel
Non Uniform Rational B-splines (NURBs) are proved to be very promising for metamodeling in engineering problems, because they have unique properties such as local modification scheme, strong convex hull property, and infinitely differentiability, etc. Since NURBs are defined by control points, knot vector, and weights associated with control points, the precision of NURBs is influenced by all o...
متن کامل